1. Field of the Invention
The present invention relates to digital data communications systems, and, more particularly, to a receiver and methods for detecting a coded signal.
2. Description of the Related Art
A pseudorandom code, also known as a pseudonoise or PN code, such as a maximum-length binary code (m-sequence) can be used to transmit timing information. The code can be sent repeatedly, in which case the timing is analogous to the ticking of a clock. This can be combined with other data (another code or signal) that effectively identifies each ‘tick’ as distinct from the others, and thus providing more complete time information such as the precise time of day.
The Global Positioning System (GPS) is a satellite based navigation system in which a GPS satellite transmits a signal with a long PN code, called the Precision (P) code. Generally, a high gain, and hence, a high tolerance to noise or jamming, can be achieved by using a long PN code in a spread-spectrum system. The P code, in addition to providing high gain, can be used by a GPS receiver to acquire timing information, and hence make ranging measurements that are used in determining the receiver's position. However, the P code is very long, repeating only once per week. Although the P code's period is that long a GPS receiver will have accurate knowledge of the portion of the P code pattern that the satellite is transmitting at any approximate time. However, the receiver's clock may be in error by as much as plus or minus five seconds before it receives and processes any GPS signals. Because the P code rate is 10,230,000 chips per second, and because the receiver must try code phases (timings) at half-chip intervals, there are 204,600,000 possible phases to try because of the time uncertainty range. The receiver tries to align and match a known code segment to the received signal, using a correlation function to evaluate the degree of matching. Because PN code have good autocorrelation properties they are widely used in such code matching systems such as GPS. If the codes match, then the receiver has detected the phase of the received code. Providing a clock more accurate than a few seconds in the receiver can be unduly burdensome, and typically will not be included in a receiver.
Another technique conventionally used, as in the GPS system, to detect a coded signal is to employ a second signal with a relatively short code to help acquire the signal with the longer code. The GPS system uses a second signal called the Coarse Acquisition (C/A) code signal. The C/A code has a period of about one millisecond, and therefore repeats often. The C/A code, because of its short repeat interval, does not provide enough information by itself to resolve the time uncertainty. However, it can help the receiver acquire the P code. Using the shorter C/A signal allows a GPS receiver to first detect that signal, which is relatively easy to detect or acquire because of its short code length and rapid repetition. After detecting the C/A code signal, the GPS receiver determines partial timing information from the C/A code signal. The receiver uses that partial timing information from the C/A code signal to reduce the number of code phases that need to be tested by correlation. Without the shorter C/A code signal to assist in narrowing the search for the P code, it would take a very long time for a receiver to acquire the longer P code signal.
Using an additional short-code signal to assist in acquiring a long-code signal requires a receiver to receive and detect two different signals having two different codes. Accordingly, the receiver must include the additional hardware and software to receive and detect two codes. The receiver will have increased concomitant costs and will require additional components and hence more space in order to acquire the two signals. Further, using two codes could take longer to acquire the long code than if only one signal were required to be received and acquired.
An example of a conventional spread-spectrum communications system is described next with reference to FIG. 1. In FIG. 1 a transmitter 1 and a receiver 9 are used in a spread-spectrum system such as the GPS system. The transmitter includes a PN code generator 2 that is controlled by a timing counter 3 and both are clocked by a clock oscillator 4. The PN code generated by generator 2 modulates a carrier signal via modulator 5 which is driven by carrier oscillator 6. Optionally, data can be superimposed onto the code and carrier by using a modulo 2 adder 7. The transmitter 1 transmits the modulated carrier via antenna 8 to a receiver 9. A second PN code generator, timing counter and clock oscillator can be used in the case where the transmitter transmits a second code, such as the C/A code in a GPS transmitter. Similarly, a receiver 9, described next, can include additional, similar components to handle the reception and detection of a second code, such as the C/A code.
Receiver 9 receives the transmitted signal via an antenna 10 that provides the received signal to a demodulator 11. The demodulator 11 is driven by a carrier oscillator 12, and produces two signals out-of-phase by 90°. Those signals are designated as in-phase (I) and quadrature phase (Q) signals. These two out-of-phase signals are provided to a group of parallel correlators 13. The parallel correlators can include as many correlators as the number of phases of the code to be tested. For example, if the code length is 1023 symbols, or chips, the parallel correlators 13 typically consist of 2046 correlators, one correlator for each code phase, at half-chip intervals. Multiple banks of the parallel correlators 13 can be used to correlate different signals, such as in this case where one bank correlates the I-signals and another bank correlates the Q-signals. The parallel correlators 13 are also provided with PN reference codes that correspond to the PN codes generated in the transmitter. PN code generator 14 generates the reference codes. The reference codes can be delayed to correspond to the various phases to be tested. Alternatively, the input signals, here the I and Q signals, can be delayed with various delays and correlated with a single PN code to test the different phases. The PN code generator 14 is driven by a local clock oscillator 15 and timing counters 16 which can effect the different timings for the PN reference codes. The local clock oscillator also drives timing counters 16.
The co-pending patent application entitled “Method and Apparatus for Generating an Interleaved Code,” which is incorporated herein by reference, describes the generation and transmission of a long code that is composed of two interleaved shorter codes. The two codes can be combined to achieve the performance of a much longer code as described in that co-pending patent application. The combined code also has the attribute that the short codes can be individually detected and they can be used to determine the phase of the longer code. For example, two codes of about one thousand bits in one millisecond can be combined to make a composite code of two million bits in two seconds. This provides one code alignment every two seconds, and increases the noise tolerance two-thousand-fold, which may be necessary if a jamming signal is present on the communication links over which the coded signal is transmitted. The present invention is directed to methods and apparatuses for detecting such an interleaved code.